"""
    在对集合做运算时，不会影响到原来的集合，而是返回一个运算结果

        & 交集运算
            获取多个集合中相同的元素
        | 并集运算
            获取多个集合中所有的元素，去重
        - 差集
            获取a集合有，b集合没有的元素
        ^ 异或集
            获取只在一个集合中出现的元素，另一个集合没有相同的元素
        <= 子集
            检查一个集合是否是另一个集合的子集，如果a集合中的元素全部都在b集合中出现，那么a集合就是b集合的子集，b就是a的超集
        < 真子集
            检查一个集合是否是另一个集合的真子集，如果a集合中的元素全部都在b集合中刚出现，b集合还有a中没有的元素，那么a就是b的真子集，b是a的真超集
        >= 超集
            检查一个集合是否是另一个集合的超集
        > 真超集
            检查一个集合是否是另一个集合的真超集

"""

# 创建两个集合
s = {1,2,3,4,5}
s2 = {3,4,5,6,7}

# & 交集运算
result = s & s2     #{3,4,5}
print(result)

# | 并集运算
result = s | s2     #{1,2,3,4,5,6,7}
print(result)

# - 差集
result = s - s2     #{1,2}
print(result)

# ^ 异或集，获取只在一个集合中出现的元素
result = s ^ s2
print(result)

# <= 检查一个集合是否是另一个集合的子集，如果a集合中的元素全部都在b集合中出现，那么a集合就是b集合的子集，b集合就是a集合的超集
a = {1,2,3}
b = {1,2,3,4,5}
result = a <= b     # True
result = {1,2,3} <= {1,2,3} # True
result = b <= a     # False
print(result)

# < 检查一个集合是否是另一个集合中的真子集
# 如果超集b中含有子集a中所有的元素，并且b中还有a中没有的元素，则b就是a的真超集，a就是b的真子集
result = a < {1,2,3}
result = a < b
print(result)

# >= 检查一个集合是否是另一个集合的超集
result = a >= b     # False
print('result = ',result)
# > 检查一个集合是否是另一个的真超集
result = a > b      # False
print('result = ',result)
